package cn.youqu.happy.module.youqu.controller.app.userActivity.vo;

import cn.youqu.happy.module.youqu.enums.userActivity.UserActivityStatusEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

import static cn.youqu.happy.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

/**
 * 用户发起活动 Base VO，提供给添加、修改、详细的子 VO 使用
 * 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
 */
@Data
public class AppUserActivityBaseVO {


    @ApiModelProperty(value = "活动名")
    private String activityName;

    @ApiModelProperty(value = "图片")
    private List<String> imgList;

    @ApiModelProperty(value = "组队口号")
    private String teamSlogan;

    @ApiModelProperty(value = "地点")
    private String address;

    @ApiModelProperty(value = "详细内容")
    private String detail;

    @ApiModelProperty(value = "队员")
    private List<Long> partnerList;

    @ApiModelProperty(value = "最大成员数量")
    private Integer maxPartners;

    @ApiModelProperty(value = "最小成员数量")
    private Integer minPartners;

    @ApiModelProperty(value = "预约时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private Date appointTime;

    @ApiModelProperty(value = "截止时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private Date endTime;


    /**
     * {@link UserActivityStatusEnum}
     */
    @ApiModelProperty(value = "活动状态")
    private Integer activityStatus;

    @ApiModelProperty(value = "备注")
    private String remark;

}
